/*
 * InterfaceSettingsImpl.java
 *
 * Copyright 2007, 2008 Tiberiumlabs
 *
 * This file is part of Tiberiumlabs Lailaps.
 *
 * Tiberiumlabs Lailaps is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 3 of the License, or
 * (at your option) any later version.
 *
 * Tiberiumlabs Lailaps is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */

package org.tiberiumlabs.lailaps.settings;

import java.awt.Color;

/**
 * @author <a href="mailto:paranoid.tiberiumlabs@gmail.com">Paranoid</a>
 */
public class InterfaceSettingsImpl implements InterfaceSettings {
    
    /** Creates a new instance of InterfaceSettingsImpl */
    public InterfaceSettingsImpl() {
    }
    
    private Color droptargetColor1 = new Color(140,255,140);
    private Color droptargetColor2 = new Color(141, 154, 253);
    private Color droptargetElementsColor = new Color(80, 80, 80);
    private Integer droptargetDirection = 1;
    
    private boolean showMainWindowOnStart = true;
    private boolean showDropTargetOnStart = true;
    
    // Position and Size settings
    private int mainWindowX = 0;
    private int mainWindowY = 0;
    private int mainWindowWidth = 680;
    private int mainWindowHeight = 360;
    private int droptargetWindowX = 0;
    private int droptargetWindowY = 0;
    private int droptargetWindowWidth = 148;
    private int droptargetWindowHeight = 70;
    
    public Color getDroptargetColor1() {
        return droptargetColor1;
    }
    
    public void setDroptargetColor1(Color droptargetColor1) {
        this.droptargetColor1 = droptargetColor1;
    }
    
    public Color getDroptargetColor2() {
        return droptargetColor2;
    }

    public Color getDroptargetElementsColor() {
        return droptargetElementsColor;
    }

    public void setDroptargetElementsColor(Color droptargetElementsColor) {
        this.droptargetElementsColor = droptargetElementsColor;
    }
        
    public void setDroptargetColor2(Color droptargetColor2) {
        this.droptargetColor2 = droptargetColor2;
    }
        
    public int getDroptargetDirection() {
        return droptargetDirection;
    }
    
    public void setDroptargetDirection(Integer droptargetDirection) {
        this.droptargetDirection = droptargetDirection;
    }
    
    public boolean isShowMainWindowOnStart() {
        return showMainWindowOnStart;
    }
    
    public void setShowMainWindowOnStart(boolean showMainWindowOnStart) {
        this.showMainWindowOnStart = showMainWindowOnStart;
    }
    
    public boolean isShowDropTargetOnStart() {
        return showDropTargetOnStart;
    }
    
    public void setShowDropTargetOnStart(boolean showDropTargetOnStart) {
        this.showDropTargetOnStart = showDropTargetOnStart;
    }
    
    public void setMainWindowHeight(int mainWindowHeight) {
        this.mainWindowHeight = mainWindowHeight;
    }

    public int getMainWindowHeight() {
        return mainWindowHeight;
    }

    public void setMainWindowWidth(int mainWindowWidth) {
        this.mainWindowWidth = mainWindowWidth;
    }

    public int getMainWindowWidth() {
        return mainWindowWidth;
    }

    public void setMainWindowY(int mainWindowY) {
        this.mainWindowY = mainWindowY;
    }

    public int getMainWindowY() {
        return mainWindowY;
    }

    public void setMainWindowX(int mainWindowX) {
        this.mainWindowX = mainWindowX;
    }

    public int getMainWindowX() {
        return mainWindowX;
    }

    public int getDroptargetWindowHeight() {
        return droptargetWindowHeight;
    }

    public void setDroptargetWindowHeight(int droptargetWindowHeight) {
        this.droptargetWindowHeight = droptargetWindowHeight;
    }

    public int getDroptargetWindowWidth() {
        return droptargetWindowWidth;
    }

    public void setDroptargetWindowWidth(int droptargetWindowWidth) {
        this.droptargetWindowWidth = droptargetWindowWidth;
    }

    public int getDroptargetWindowX() {
        return droptargetWindowX;
    }

    public void setDroptargetWindowX(int droptargetWindowX) {
        this.droptargetWindowX = droptargetWindowX;
    }

    public int getDroptargetWindowY() {
        return droptargetWindowY;
    }

    public void setDroptargetWindowY(int droptargetWindowY) {
        this.droptargetWindowY = droptargetWindowY;
    }
    
    private int[] tableColumnOrder = null;
    @Override
    public int[] getTableColumnOrder() {
        return tableColumnOrder;
    }
    public void setTableColumnOrder(int[] tableColumnOrder) {
        this.tableColumnOrder = tableColumnOrder;
    }

}
